package com.cicigodd.brick.plug.common.factory;

import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

/**
 * 分页参数快速获取
 *
 * @author cicigodd
 * @date 2022/09/23 08:42:00
 */
public class PageFactory {

    /**
     * 每页大小（默认20）
     */
    private static final String PAGE_SIZE_PARAM_NAME = "pageSize";

    /**
     * 第几页（从1开始）
     */
    private static final String PAGE_NO_PARAM_NAME = "pageNum";

    /**
     * 默认分页，在使用时PageFactory.defaultPage会自动获取pageSize和pageNum参数
     */
    public static <T> Page<T> defaultPage(Integer pageNum, Integer pageSize) {


        //每页条数
        if (ObjectUtil.isEmpty(pageSize)) {
            pageSize = -1;
        }

        //第几页
        if (ObjectUtil.isEmpty(pageNum)) {
            pageNum = -1;
        }

        return new Page<>(pageNum, pageSize);
    }

}
